

# Rule M3.2b: Space to wide Metal3 (length & width > 10um) is 0.3µm
logger.info('Executing rule M3.2b')
wide_m3 = metal3.not_interacting(metal3.edges.with_length(nil, 10.um))
m32b_l1 = metal3.separation(wide_m3, 0.3.um, euclidian)
m32b_l1.output('M3.2b', 'M3.2b : Space to wide Metal3 (length & width > 10um) : 0.3µm')
m32b_l1.forget
wide_m3.forgetwide_m3 is all the m3 shapes that do not have at least one dimension that is in the range [0, 10), which seems to match what the written rule says


wide_m3 = metal3.sized(-5.um).sized(5.um) & metal3 might work better.




1





sized makes a difference here, since large sized can be a performance bottleneck.upstream do you mean the PDK fork, or the FOSSi one?
If this is an issue in Tiny Tapeout user designs, then I'll upstream the patch sooner than after the tapeout.















